import time
from multiprocessing import Process # 导入 开启多进程的库
def task(name,count):
    time.sleep(count)
    print(f"{name}--{count}")

# 开启多进程 python要求，开启多进程的代码所在的文件，必须是直接启动文件。也就是说 开启进程的操作不能通过导入 模块的方式来打开。
if __name__ == "__main__":
    # 必须在main下开启多进程才可以 
    # 第一种方式 启动进程
    # p1 = Process(target=task,args=('AA',6))
    # p2 = Process(target=task, args=('AA', 20))
    # p1.start() # 启动进程
    # p2.start()
    # p1.join()  # 主进程等待子进程的完成
    # p2.join()
    # 第二种方式 一次性启动多个进程
    taskPar = [('AA', 7), ('BB', 14), ('CC', 20)]
    processList = [Process(target=task,args=(name,count)) for name,count in taskPar] # 循环加表达式的写法 + 元组解构
    for process in processList:
        process.start()
    for process in processList:
        process.join()